package com.hsylient.javase.chapter06.demo01;

/**
 * 没有引入异常处理机制的时候代码中存在的问题 最后一段话没有执行
 *
 * 在程序执行到第14行的时候发生了ArithmeticException(算术)异常，在底层new了ArithmeticException异常对象而后抛出
 * 由于是main方法执行了3/0有问题的代码，所以异常抛给了main方法
 * main方法没有处理这个异常，将这个异常抛给JVM，JVM终止程序的执行，所以最后一段话没有执行
 * 在实际开发中这并不是我们想要的，我们想要的是程序就算是发生了异常依然可以健康的执行下去
 *
 * 处理方法使用：try...catch...
 */
public class OldProblem {

    public static void main(String[] args) {
        // 实际上JVM执行到这里的时候会创建异常对象new ArithmeticException("/ by zero");并打印输出到控制台上
        int i = 3 / 0;
        System.out.println("这段代码为什么没有打印的原因是上一行发生了异常");
    }
}
